به زبان ساده اینترنت اشیا به فرآیند اتصال دستگاههای مختلف به یکدیگر اشاره دارد که شبکهای از دستگاههای متصل را بر مبنای معماری یا فناوری خاصی به همراه روترها، محرکها و حسگرها (حسگرهای حرکتی، حسگرهای دمایی، حسگرهای رطوبتی، حسگرهای نوری و غیره) به وجود میآورند. این دستگاهها دادهها را میان خود به اشتراک میگذارند تا مصرفکنندگان هنگام استفاده از آنها کنترل و راحتی بیشتری داشته باشند. مرکز آمار استاتیستا تخمین زده است تا پایان سال 2018 تقریباً 22 میلیارد دستگاه اینترنت اشیا در سراسر جهان به شبکه جهانی اینترنت متصل شدهاند و انتظار میرود تا پایان سال 2030 این رقم به 50 میلیارد دستگاه افزایش پیدا میکند. از آنجایی که مصرفکنندگان و کسبوکارها هر دو از دستگاههای هوشمند و راهحلهای اینترنت اشیا استفاده میکنند، چالشی بزرگ برای زیرساختهای رایج به وجود میآورند، بهطوری که این صنعت به افراد متخصص، مستعد و متبحری برای مدیریت این پیچیدگیها نیاز دارد. این وابستگی به نیروهای متخصص باعث شده تا نقشهای شغلی مختلفی در صنعت اینترنت اشیا پدید آید. یکی از مشاغل جالب و چالشبرانگیز این صنعت مهندس اینترنت اشیا است.
مهندس اینترنت اشیا کیست؟
مهندس اینترنت اشیا از جمله مشاغل این صنعت است که نیازمند مهارتهای مرتبط با یکدیگر است. مهندسان اینترنت اشیا، افراد متخصصی هستند که میتوانند با ترکیب سه مولفه اصلی داده، فناوری و تحقیق، دستگاهها و سیستمهای اینترنت اشیا را توسعه داده و برآنها نظارت و مدیریت کنند. از آنجایی که مهندس اینترنت اشیا، یک متخصص همه فن حریف است، این افراد باید در زمینههای مختلف از جمله امنیت، شبکهسازی، مهندسی سیستم، برنامهنویسی ابر و برنامهنویسی سختافزاری مهارت کافی داشته باشند. همین موضوع باعث میشود تا مهندسان اینترنت اشیا تا حدی انعطافپذیر باشند و بتوانند همزمان چند شغل و نقش مختلف داشته باشند. بهطور معمول، مهندسان اینترنت اشیا با تیمهای تحلیلگر کسبوکار، مهندسی، علوم داده و طراحی همکاری نزدیک دارند تا بهترین راهحلها را برای مشکلات دنیای واقعی ارائه دهند.
مسئولیتهای مهندس اینترنت اشیا
همانند سایر مشاغل مهم دنیای فناوریاطلاعات، مهندسان اینترنت اشیا وظایف شناخته شدهای دارند که از مهمترین آنها به موارد زیر میتوان اشاره کرد:
- تحقیق، ساخت، آزمایش و مستندسازی راهحلهای پیشرفته اینترنت اشیا با تمرکز بر هر دو جنبه توسعه یکپارچه سختافزاری و نرمافزاری.
- توسعه نرمافزار بومی دستگاه اینترنت اشیا و اجرای فرآیندهای منظم نظارت، بازبینی و بهروزرسانی نرمافزار.
- طراحی سرویسهای نوآورانه اینترنت اشیا که با فناوریهای سمت سرور ارتباط برقرار میکنند و هر زمان که لازم باشد راهحلهای پشته MEAN را توسعه میدهند.
- ارزیابی عملکردهای موردنیاز و بهکارگیری ابزارها و تکنیکهای جدید و پیشرفته با هدف ساخت سریع نمونههای اولیه و ساختاریافته.
- طراحی و توسعه راهحلهای زیرساختی برای کاربردهای خاص اینترنت اشیا (ابر تا لبه) سرنام cloud-to-edge، بهطوری که امکان پیکربندی و استقرار متناسب با سرویسگیرندههای مختلف با نیازهای مختلف فراهم باشد.
- برنامهریزی و ساخت ابزارهای کارآمد برای بهینه کردن تضمین کیفیت (QA) پشتیبانی، استقرار و خدمات پشتیبانی.
مهارتهایی که یک مهندس اینترنت اشیا باید داشته باشد
یک مهندس اینترنت اشیا برای انجام درست وظایف خود باید مهارتهای مختلفی داشته باشد که از آن جمله به موارد زیر میتوان اشاره کرد:
- تجربه برنامهنویسی عملی با زبانهای برنامهنویسی پایتون، Embeded C و ++Embedded C.
- درک عمیق از سیستمعامل لینوکس با هدف مدیریت و کنترل دستگاهها و نظارت بر فرآیندهای موردنیاز.
- آشنایی کامل با معماری نرمافزار توکار (embedded)، تجربه کار با نمودارهای کاربردی در UML، نمودار کلاسها (classes diagram) و نمودار توالی (sequence diagram) برای به تصویر کشیدن دقیق معماری سیستمی که قرار است پیادهسازی شود. - برخورداری از دانش فنی عمیق در ارتباط با کار با کنترلرهای 32 بیتی ARM cortex M3/M4.
- تجربه کار با پروتکلها و چهارچوبهای مهم بیسیم نظیر زیگبی، Thread یا BLE-Mesh
- دانش تخصصی و تبحر در نوشتن منطق تجاری در ارتباط با تجهیزات توکار با استفاده از روش آزمون محور در پلتفرمهای RTOS و غیر RTOS
- مهارت کافی در ارتباط با پروتکلهای ارتباطی نظیر 12C، SPI ، 1-wire،UART ،MODBUS و DALI.
- توانایی حل مسئله و تفکر تحلیلی و تعامل با سایرین.
چگونه میتوان یک مهندس اینترنت اشیا شد؟
برای تبدیل شدن به یک مهندس اینترنت اشیا موفق ابتدا باید دانش و مهارت خود در ارتباط با مباحث زیر را افزایش دهید.
1. اصول و مبانی حسگرها را درک کنید
همانگونه که اشاره کردیم، اینترنت اشیا اساساً حول محور حسگرها میچرخد. هر توسعهدهنده اینترنت اشیا باید درک عمیقی از حسگرها داشته باشد. این حسگرها هستند که دادهها را در یک شبکه اینترنت اشیا جمعآوری میکنند. شما باید با مکانیزم عملکردی انواع مختلف حسگرها آشنا باشید و شناخت دقیقی در ارتباط با معماری آنها داشته باشید. درک صحیح از سیستمهای ارتباطی بیسیم و منطق نهفته برای درک محرکها و عملکرد منحصر به فرد مولفههای مختلف حائز اهمیت است.
2. به رابط کاربری توجه کنید
رابط کاربری (UI) و تجربه کاربری (UX) دو رکن موفقیت هر برنامه کاربردی هستند، برنامههای اینترنت اشیا نیز از این قاعده مستثنا نیستند. از آنجایی که مصرفکنندگان برای راحتتر کردن زندگی روزمره خود به راهحلهای اینترنت اشیا اعتماد میکنند، شما نمیتوانید تنها روی تجربه کاربری تمرکز کنید. تجربه کاربری تنها زمانی میتواند عملکرد مطلوبی داشته باشد که رابط کاربری شفاف، روان، قابل پیمایش و ایدهال برای زیرساختهای مختلف باشد.
3. در کار با پایتون و جاوا اسکریپت تجربه کسب کنید
از آنجا که اکثر دستگاهها و راهحلهای اینترنت اشیا از زبانهای برنامهنویسی پیشرفته مانند جاوااسکریپت و پایتون به عنوان زبان پایه استفاده میکنند، بنابراین آشنایی با این دو زبان برای توسعه برنامههای اینترنت اشیا ضروری است. در حالی که پایتون سرعت توسعه و مقیاسپذیری زیادی ارائه میدهد، جاوا اسکریپت یک زبان مبتنی بر وب و رویداد- محور است، به همین دلیل برای بکاند مناسب است و واکنشها را از دستگاهها دریافت میکند.
4. با رزبری پای کار کنید
در حالی که سازمانهای معتبری مانند IEEE معتقدند که توسعهدهندگان اینترنت اشیا حتماً باید پیشینهای در علوم رایانه یا مهندسی برق داشته باشند، اما راهحلهایی همچون رزبری پای (Raspberry Pi) به تغییر این قاعده کمک فراوانی کردهاند. با استفاده از رزبری پای میتوانید پروژههای کوچک اینترنت اشیا را طراحی و توسعه دهید و با این کار مهارت و استعداد خود را به کارفرمایان احتمالی نشان دهید. رزبری پای یک رایانه ارزان قیمت و کوچک است که بیشتر در پروژههای اثبات- مفهومی اینترنت اشیا استفاده میشود و به شما امکان میدهد تا مدارهای ساده را به هم وصل کنید و بعد از طریق نرمافزار آن مدارها را کنترل کنید. با ساخت این پروژههای ساده، میتوانید نشان دهید که دانش و مهارت لازم برای اینگونه ابتکارات و ساخت پروژههای اینترنت اشیا را دارید.
5. روی یادگیری مفاهیم بنیادین سیستمعاملهای موبایل سرمایهگذاری کنید
دستگاههای موبایل مانند گوشیهای هوشمند و ساعتهای هوشمند به شکل گستردهای توسط کاربران سراسر جهان استفاده میشوند. از آنجایی که دستگاههای موبایل محبوبترین و پرطرفدارترین فناوری (به لطف عواملی چون راحتی و قابلیت حمل و نقل ) هستند، باید مهارتهای مربوط به فناوری موبایل را کسب کنید. این کار به شما کمک میکند تا برنامههای اینترنت ینترنت اشیا خود را بهینهسازی کنید و به کاربران بیشتری دسترسی داشته باشید.
به این مطلب چند ستاره میدهید؟(امتیاز: 2.6 - رای: 8)
- منبع: ماهنامه شبکه